Skip to content

add: GrapheneOS 17 Zygote function signatures - #378

Merged
ThePedroo merged 2 commits into
PerformanC:mainfrom
diwangs:main
Aug 4, 2026
Merged

add: GrapheneOS 17 Zygote function signatures#378
ThePedroo merged 2 commits into
PerformanC:mainfrom
diwangs:main

Conversation

@diwangs

@diwangs diwangs commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Changes

Added fas_grapheneos_c and spec_grapheneos_c to JNI hook generator

Why

Android 17 version of GrapheneOS moved extraLongArgs from the end to the front of the
argument list (source permalink). fas_grapheneos_u / spec_grapheneos_u put Anon(jlongArray) last, which matches GrapheneOS 16 but not 17. Without a new function signature, ReZygisk doesn't work.

Note that they are also different from regular Android 17 signature (added in commit 946708e), as GrapheneOS function signatures often do.

Checkmarks

  • The modified functions have been tested.
  • Used the same indentation as the rest of the project.
  • Updated documentation (changelog).

Additional information

Tested on:

  • Pixel 9 Pro (caiman), GrapheneOS build 2026072901, Android 17 / SDK 37, ro.zygote=zygote64
  • Magisk 30.7, with Magisk's built-in Zygisk disabled (zygisk=0) as ReZygisk requires

Android 17 version of GrapheneOS moved `extraLongArgs` from the end to
the front of the
argument list. Add the new function signature so ReZygisk can properly
work on those devices.
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

All Contributors have signed the CLA. The PR is now allowed to be merged.
Posted by the CLA Assistant Lite bot.

@diwangs

diwangs commented Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

I have read the CLA Document and I hereby sign the CLA

performanc-bot added a commit to PerformanC/CLA-Signatures that referenced this pull request Aug 4, 2026
@ThePedroo
ThePedroo self-requested a review August 4, 2026 08:23
Comment thread loader/src/injector/gen_jni_hooks.py Outdated
Comment thread loader/src/injector/gen_jni_hooks.py Outdated
whitelisted_data_info_list, mount_data_dirs, mount_storage_dirs, mount_sysprop_overrides, Anon(jlongArray)])

# GrapheneOS Android 17 Support
fas_grapheneos_c = ForkAndSpec('grapheneos_c', [Anon(jlongArray), uid, gid, gids, runtime_flags,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know you followed the pattern 2x And I should have fixed it, but do move this fas to the tons of fas before this to make it consistent. I'll fix the inconsistency of GOS soon, after this PR being merged.

@diwangs diwangs Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I could move the GOS inconsistency for you in one PR. Do you want them to be grouped to?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, in another PR

@ThePedroo ThePedroo added confirmed This issue or pull request is confirmed to be done. enhancement New feature or request labels Aug 4, 2026
respective hunk, aligned with maintainer's new convention

@ThePedroo ThePedroo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ThePedroo
ThePedroo merged commit dd3d608 into PerformanC:main Aug 4, 2026
1 check passed
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 4, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

confirmed This issue or pull request is confirmed to be done. enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants